package com.qfedu.config;

import org.apache.shiro.crypto.hash.SimpleHash;
import org.apache.shiro.util.ByteSource;

/**
 * MD5密文生成配置类，仅用于向表中已存在但未加密的密码进行加密，不进行其他操作
 */
public class CreateMD5 {
    public static void main(String[] args) {
        //设置加密算法
        String hashAlgorithmName = "MD5";
        //设置登录时的密码，数据库中的密码
        String password = "123456";
        //设置加密次数
        int hashIterations = 1024;
        //加盐 --> 设置盐值，并使用用户登录名作为盐值
        ByteSource credentialsSalt = ByteSource.Util.bytes("zhangsan");
        //将创建好的加密方式计算法等信息封装在SimpleHash对象中
        SimpleHash simpleHash = new SimpleHash(hashAlgorithmName, password, credentialsSalt, hashIterations);
        //将最后加密后生成的密码打印出来即可设置
        System.out.println("加密后的密码为：" + simpleHash);
    }
}